package com.mdd.front.service.yangyangLeadingEnterprise;

import com.mdd.common.core.PageResult;
import com.mdd.common.entity.yangyangLeadingEnterprise.TAppClubActivity;
import com.mdd.common.entity.yangyangLeadingEnterprise.param.ClubActivityParam;
import com.mdd.front.validate.common.PageValidate;
import com.mdd.front.validate.yangyangLeadingEnterprise.TAppClubActivityCreateValidate;
import com.mdd.front.validate.yangyangLeadingEnterprise.TAppClubActivitySearchValidate;
import com.mdd.front.validate.yangyangLeadingEnterprise.TAppClubActivityUpdateValidate;
import com.mdd.front.vo.yangyangLeadingEnterprise.TAppClubActivityDetailVo;
import com.mdd.front.vo.yangyangLeadingEnterprise.TAppClubActivityListedVo;

import java.util.List;

/**
 * 俱乐部活动服务接口类
 * @author LikeAdmin
 */
public interface ITAppClubActivityService {

    /**
     * 俱乐部活动列表
     *
     * @author LikeAdmin
     * @param pageValidate 分页参数
     * @param searchValidate 搜索参数
     * @return PageResult<TAppClubActivityListedVo>
     */
    PageResult<TAppClubActivityListedVo> list(PageValidate pageValidate, TAppClubActivitySearchValidate searchValidate);

    /**
     * 俱乐部活动详情
     *
     * @author LikeAdmin
     * @param id 主键ID
     * @return TAppClubActivityDetailVo
     */
    TAppClubActivityDetailVo detail(Integer id);

    /**
     * 俱乐部活动新增
     *
     * @author LikeAdmin
     * @param createValidate 参数
     */
    void add(TAppClubActivityCreateValidate createValidate);

    /**
     * 俱乐部活动编辑
     *
     * @author LikeAdmin
     * @param updateValidate 参数
     */
    void edit(TAppClubActivityUpdateValidate updateValidate);

    /**
     * 俱乐部活动删除
     *
     * @author LikeAdmin
     * @param id 主键ID
     */
    void del(Integer id);

    /**
     * 首页---领企俱乐部活动列表
     * @param param
     * @return
     */
    List<TAppClubActivity> selectList(ClubActivityParam param);

    /**
     * 根据id查询俱乐部活动
     * @param activityId
     * @return
     */
    String selectActivityById(Integer activityId);
}
